package com.xyht.sca_s.student_manage_system.modules.commonExamine.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xyht.sca_s.student_manage_system.common.commonReturn.ResponseResult;
import com.xyht.sca_s.student_manage_system.modules.commonExamine.entity.SmsCommonExamine;
import com.xyht.sca_s.student_manage_system.modules.commonExamine.entity.req.SmsCommonExamineHistoryReq;
import com.xyht.sca_s.student_manage_system.modules.commonExamine.entity.req.SmsCommonExamineReq;

import javax.servlet.http.HttpServletResponse;
import java.util.concurrent.Future;

/**
 * <p>
 * 通用审批 服务类
 * </p>
 *
 * @author XYHT
 * @since 2023-04-24
 */
public interface SmsCommonExamineService extends IService<SmsCommonExamine> {
        ResponseResult addCommonExamine(SmsCommonExamineReq smsCommonExamineReq,String user_id);

        ResponseResult cancelCommonExamine(SmsCommonExamineReq smsCommonExamineReq,String user_id);

        ResponseResult getCommonExamineList(String search_str,
                                            String user_id,
                                            Integer examine_type,
                                            Integer pageNum,
                                            Integer pageSize);

        ResponseResult getCommonExamineDetail(String id, Integer examine_type,String user_id);

        ResponseResult allowCommonExamine(SmsCommonExamineReq smsCommonExamineReq,String user_id);

        Future<ResponseResult> tableDownload(String examine_id, HttpServletResponse response);

        ResponseResult getExamineHistoryList(String apply_user,
                                             String examine_id,
                                             String examine_title,
                                             String examine_status,
                                             Integer pageNum,
                                             Integer pageSize);

        Future<ResponseResult> exportExamineHistoryList(SmsCommonExamineHistoryReq req, HttpServletResponse response);
}
